﻿using Google.Protobuf;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace TYG.NetWorking.Common.Package
{
    public class BaseMessageEvent
    {
        public BasicMessage message { get; set; } = new BasicMessage();

        public Action<BasicMessage> SendBeforeHandler = SendBeforeEvent;

        private static void SendBeforeEvent(BasicMessage obj)
        {
            throw new NotImplementedException();
        }

        public Action<BasicMessage> SendAfterHandler = SendAfterEvent;

        private static void SendAfterEvent(BasicMessage obj)
        {
            throw new NotImplementedException();
        }

        public Action<BasicMessage> ReceiveBeforeHandler = ReceiveBeforeEvent;

        private static void ReceiveBeforeEvent(BasicMessage obj)
        {
            throw new NotImplementedException();
        }

        public Action<BasicMessage> ReveiveAfterHandler = ReveiveAfterEvent;

        private static void ReveiveAfterEvent(BasicMessage obj)
        {
            throw new NotImplementedException();
        }

        public void Init() {
            message = new BasicMessage();
        }
        public void Send(int ActionId, messageStatus message= messageStatus.OnlyMe) {
            
        }

        public BasicMessage Receive() {
           
        }
    }
}
 